//package cn.zengdeai.langchain4j_springboot.config;
//
//
//import dev.langchain4j.memory.ChatMemory;
//import dev.langchain4j.memory.chat.MessageWindowChatMemory;
//import dev.langchain4j.model.chat.ChatLanguageModel;
//import dev.langchain4j.model.chat.StreamingChatLanguageModel;
//import dev.langchain4j.service.*;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//
//@Configuration
//public class DaobaoAiConfig {
//
//    public int counter=0;
//
//
//
//    public interface DaobaoAssistant {
//        String chat(String message);
//        // 流式响应
//        TokenStream stream(String message);
//
//        @SystemMessage("""
//                您是“Tuling”航空公司的客户聊天支持代理。请以友好、乐于助人且愉快的方式来回复。
//                        您正在通过在线聊天系统与客户互动。
//                        在提供有关预订或取消预订的信息之前，您必须始终从用户处获取以下信息：预订号、客户姓名。
//                        请讲中文。
//			   今天的日期是 {{current_date}}.
//        """)
//        TokenStream stream(@UserMessage String message,@V("current_date") String currentDate);
//    }
//
//
//    /**
//     *
//     * @param doubaoChatModel
//     * @param douBaotreamingChatModel
//     * @return
//     */
//
//
//    @Bean
//    public DaobaoAssistant assistant(ChatLanguageModel doubaoChatModel,
//                                     StreamingChatLanguageModel douBaotreamingChatModel) {
//        ChatMemory chatMemory = MessageWindowChatMemory.withMaxMessages(10);
//
//        DaobaoAssistant assistant = AiServices.builder(DaobaoAssistant.class)
//                .chatLanguageModel(doubaoChatModel)
//                .streamingChatLanguageModel(douBaotreamingChatModel)
//                .chatMemory(chatMemory)
//                .build();
//        System.out.println("计数器为:"+this.counter++);
//
//        return  assistant;
//    }
//
//
//
//}
